package com.loctek.importexport.mvp.acitvity;

import android.content.Intent;
import android.support.annotation.NonNull;
import android.text.TextUtils;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;

import com.loctek.importexport.R;
import com.loctek.importexport.base.BaseActivity;
import com.loctek.importexport.bean.LoginResponse;
import com.loctek.importexport.mvp.presenter.LoginPersenter;
import com.loctek.importexport.mvp.view.LoginView;
import com.loctek.importexport.util.PreferencesUtility;
import com.loctek.importexport.util.UtilDialog;

import butterknife.BindView;

/**
 * ━━━━━━神兽出没━━━━━━
 * 　　　┏┓　　　┏┓
 * 　　┏┛┻━━━┛┻┓
 * 　　┃　　　　　　　┃
 * 　　┃　　　━　　　┃
 * 　　┃　┳┛　┗┳　┃
 * 　　┃　　　　　　　┃
 * 　　┃　　　┻　　　┃
 * 　　┃　　　　　　　┃
 * 　　┗━┓　　　┏━┛
 * 　　　　┃　　　┃  神兽保佑
 * 　　　　┃　　　┃  代码无bug
 * 　　　　┃　　　┗━━━┓
 * 　　　　┃　　　　　　　┣┓
 * 　　　　┃　　　　　　　┏┛
 * 　　　　┗┓┓┏━┳┓┏┛
 * 　　　　　┃┫┫　┃┫┫
 * 　　　　　┗┻┛　┗┻┛
 * ━━━━━━感觉萌萌哒━━━━━━
 * <p>
 * 作者：司海林
 * 邮箱：sihailin@sina.cn
 * 时间：2017/9/7
 * 描述：用户登录
 */
public class LoginActivity extends BaseActivity<LoginView, LoginPersenter> implements LoginView {
    @BindView(R.id.login_account_et)
    EditText loginAccountEt;
    @BindView(R.id.login_account_ll)
    LinearLayout loginAccountLl;
    @BindView(R.id.login_password_et)
    EditText loginPasswordEt;
    @BindView(R.id.login_password_ll)
    LinearLayout loginPasswordLl;
    @BindView(R.id.login_btn)
    Button loginBtn;
    PreferencesUtility preferencesUtility;


    @Override
    protected int attachLayoutRes() {
        return R.layout.activity_login;
    }

    @Override
    protected void initInjector() {

    }

    @Override
    protected void initViews() {
        preferencesUtility = PreferencesUtility.getInstance(LoginActivity.this);

        if(!TextUtils.isEmpty(preferencesUtility.getAccount())){
            loginAccountEt.setText(preferencesUtility.getAccount());
        }

        if(!TextUtils.isEmpty(preferencesUtility.getPwd())){
            loginPasswordEt.setText(preferencesUtility.getPwd());
        }

        loginBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (ParamsCheck())
                    getPresenter().login(loginAccountEt.getText().toString(), loginPasswordEt.getText().toString());
            }
        });
    }

    private boolean ParamsCheck() {
        if (TextUtils.isEmpty(loginAccountEt.getText().toString())) {
            UtilDialog.showNormalToast(getResources().getString(R.string.input_account));
            return false;
        }
        if (TextUtils.isEmpty(loginPasswordEt.getText().toString())) {
            UtilDialog.showNormalToast(getResources().getString(R.string.input_password));
            return false;
        }
        return true;
    }

    @Override
    protected void updateViews(boolean isRefresh) {

    }

    @Override
    protected void setContentViewBefore() {
        requestWindowFeature(Window.FEATURE_NO_TITLE);// 隐藏标题
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);// 设置全屏
    }

    @Override
    protected boolean showToolbar() {
        return false;
    }

    @NonNull
    @Override
    public LoginPersenter createPresenter() {
        return new LoginPersenter(getApp());
    }

    @Override
    public void login(LoginResponse data) {
        preferencesUtility.setAccount(loginAccountEt.getText().toString());
        preferencesUtility.setPwd(loginPasswordEt.getText().toString());
        startActivity(new Intent(LoginActivity.this, MainActivity.class));
        finish();
    }
}
